package com.tarena.csmall.order.web.controller;

import cn.tedu.mall.common.restful.JsonPage;
import cn.tedu.mall.common.restful.JsonResult;
import cn.tedu.mall.pojo.order.dto.CartAddDTO;
import cn.tedu.mall.pojo.order.dto.CartUpdateDTO;
import cn.tedu.mall.pojo.order.vo.CartStandardVO;
import com.tarena.csmall.order.web.service.CartService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RestController;

//前后端分离
@RestController
public class CartController {
    //调用一下业务层
    @Autowired
    private CartService cartService;
    //新增购物车对象
    @PostMapping("/oms/cart/add")
    public JsonResult addCart(@Validated CartAddDTO cartAddDTO){
        cartService.addCart(cartAddDTO);
        return JsonResult.ok();
    }
    /**
     * 查询我的购物车
     */
    @GetMapping("/oms/cart/list")
    public JsonResult<JsonPage<CartStandardVO>> queryMyCarts(){
        //业务层获取数据
        JsonPage<CartStandardVO> carts=cartService.queryMyCarts();
        return JsonResult.ok(carts);
    }
    /**
     * 更新购物车数量
     */
    @PostMapping("/oms/cart/update/quantity")
    public JsonResult updateNum(CartUpdateDTO cartUpdateDTO){
        cartService.updateNum(cartUpdateDTO);
        return JsonResult.ok();
    }

}
